package com.xmtlxx.oms.domain.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.xmtlxx.common.annotation.ExcelDictFormat;
import com.xmtlxx.common.convert.ExcelDictConvert;
import com.xmtlxx.common.core.domain.BaseEntity;
import com.xmtlxx.system.domain.SysOss;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.List;


/**
 * 财物视图对象 t_property
 *
 * @author xmtlxx
 * @date 2022-08-12
 */
@Data
@ApiModel("财物视图对象")
@ExcelIgnoreUnannotated
public class PropertyVo extends BaseEntity {

    private static final long serialVersionUID = 1L;

    /**
     * 货品id
     */
    @ExcelProperty(value = "货品id")
    @ApiModelProperty("货品id")
    private String id;

    /**
     * 货品名称
     */
    @ExcelProperty(value = "货品名称")
    @ApiModelProperty("货品名称")
    private String name;

    /**
     * 货品编号
     */
    @ExcelProperty(value = "货品编号")
    @ApiModelProperty("货品编号")
    private String pno;

    /**
     * 分类ID
     */
    @ExcelProperty(value = "分类ID")
    @ApiModelProperty("分类ID")
    private String classifyId;

    /**
     * RFID
     */
    @ExcelProperty(value = "RFID")
    @ApiModelProperty("RFID")
    private String rfid;

    /**
     * 库位ID
     */
    @ExcelProperty(value = "库位ID")
    @ApiModelProperty("库位ID")
    private String locatorId;

    /**
     * 状态
     */
    @ExcelProperty(value = "状态", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_common_status")
    @ApiModelProperty("状态")
    private String status;

    @ExcelProperty(value = "删除标识", converter = ExcelDictConvert.class)
    @ExcelDictFormat(dictType = "sys_del_flag")
    private String delFlag;

    @ExcelProperty(value = "库位")
    @ApiModelProperty("库位")
    private String locator;

    @ExcelProperty(value = "库区")
    @ApiModelProperty("库区")
    private String area;

    @ExcelProperty(value = "仓库")
    @ApiModelProperty("仓库")
    private String store;

    @ExcelProperty(value = "分类名称")
    @ApiModelProperty("分类名称")
    private String classifyName;

    private String storeId;

    private String areaId;

    /**
     * 案件id
     */
    @ApiModelProperty("案件id")
    private String caseId;
    /**
     * 案件编号
     */
    @ExcelProperty(value = "案件编号")
    @ApiModelProperty("案件编号")
    private String caseNo;

    private Long nums;

    @ExcelProperty(value = "财物特征")
    @ApiModelProperty("财物特征")
    private String character;

    @ApiModelProperty("移交类型：0-不可移交 1-临时调用 2-暂缓移交 3-移交区县")
    private String transferType;

    @ApiModelProperty("所队移交状态：0-待移交 1-已移交")
    private String transferStatus;

    /**
     * 区县移交状态
     */
    @ApiModelProperty("区县移交状态：0-待移交 1-已移交")
    private String countyTransferStatus;

    /**
     * 二级分类
     */
    private String secondClassifyId;

    /**
     * 三级分类
     */
    private String thirdClassifyId;

    /**
     * 扣押单位编码
     */
    private Long officeId;

    /**
     * 办案民警
     */
    private String personName;
    /**
     * 所属单位
     */
    private Long deptId;

    /**
     * 保管单位
     */
    private Long belongDeptId;


    /**
     * 保管单位
     */
    private String belongStoreId;

    /**
     * 保管场所
     */
    private String belongDeptName;

    /**
     * 单位
     */
    private String unit;

    private String secondClassifyName;

    private String thirdClassifyName;

    private List<SysOss> oss;

    private String deptName;

    private String transferName;

    private String officeName;

    /**
     * 财物入库编码
     */
    @ApiModelProperty("财物入库编码")
    private String qrcode;

    /**
     * 入库数
     */
    @ExcelProperty(value = "入库数")
    @ApiModelProperty("入库数")
    private Long innums;
    /**
     * 出库数
     */
    @ExcelProperty(value = "出库数")
    @ApiModelProperty("出库数")
    private Long outnums;
    /**
     * 处置数
     */
    @ExcelProperty(value = "处置数")
    @ApiModelProperty("处置数")
    private Long deals;
    /**
     * 调用数
     */
    @ExcelProperty(value = "调用数")
    @ApiModelProperty("调用数")
    private Long tnums;
    /**
     * 归还数
     */
    @ExcelProperty(value = "归还数")
    @ApiModelProperty("归还数")
    private Long rnums;

    private String groupName;
    private String cabinetName;

    private String picPathes;

    private String inventoryStatus;

    /**
     * 保管位置
     */
    private String warehouseLocation;

    /**
     * 保管仓库
     */
    private String custodianPlace;

    private String carType;

    private String iStoreId;

    private String carKey;
    private String driveLicen;
    private String registerBook;
}
